lib.pci: Support short/canonical ("01:00.0") PCI addresses #669
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed alternative to #657 after tomatoes were thrown in response to my more complicated proposal.
Adds these two functions:
pci.canonical(address)
=> returns address in short canonical format (01:00.0
)pci.qualified(address)
=> returns address in fully qualified format (0000:01:00.0
)with the intention that users can specify either format and Snabb Switch will prefer the canonical format internally but expand to the qualified format when needed (e.g. for resolving sysfs paths).
This is a user visible change. The PCI device scan and selftest now uses canonical addresses:
and software now accepts either format in parameters:
This change can potentially break software that depends on always having qualified paths: that would now be considered a bug. (This PR includes a fix for such a problem in packetblaster.)